<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script type="text/javascript">

        /*
         * 内建对象
         * 宿主对象
         * 自定义对象
         *
         * 数组（Array）
         * 	- 数组也是一个对象
         * 	- 它和我们普通对象功能类似，也是用来存储一些值的
         * 	- 不同的是普通对象是使用字符串作为属性名的，
         * 		而数组时使用数字来作为索引操作元素
         * 	- 索引：
         * 		从0开始的整数就是索引
         * 	- 数组的存储性能比普通对象要好，在开发中我们经常使用数组来存储一些数据
         */

        //创建数组对象
        var arr = new Array();

        //使用typeof检查一个数组时，会返回object
        //console.log(typeof arr);

        /*
         * 向数组中添加元素
         * 语法：数组[索引] = 值
         */
        arr[0] = 10;
        arr[1] = 33;
        arr[2] = 22;
        arr[3] = 44;
        /*arr[10] = 31;
        arr[100] = 90;*/

        /*
         * 读取数组中的元素
         * 语法：数组[索引]
         * 	如果读取不存在的索引，他不会报错而是返回undefined
         */

        //console.log(arr[3]);

        /*
         * 获取数组的长度
         * 可以使用length属性来获取数组的长度(元素的个数)
         * 	语法：数组.length
         *
         * 对于连续的数组，使用length可以获取到数组的长度（元素的个数）
         * 对于非连续的数组，使用length会获取到数组的最大的索引+1
         * 		尽量不要创建非连续的数组
         */
        /*console.log(arr.length);
        console.log(arr);*/

        /*
         * 修改length
         * 	如果修改的length大于原长度，则多出部分会空出来
         *  如果修改的length小于原长度，则多出的元素会被删除
         */
        //arr.length = 10;

        /*arr.length = 2;

        console.log(arr.length);
        console.log(arr);*/

        arr[4] = 50;
        arr[5] = 60;

        //向数组的最后一个位置添加元素
        //语法：数组[数组.length] = 值;
        arr[arr.length] = 70;
        arr[arr.length] = 80;
        arr[arr.length] = 90;

        console.log(arr);

    </script>
</head>
<body>
</body>
</html>
